package com.t.bricks.bussiness.db.entity.vacation.base;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;

import java.io.Serializable;
import java.util.Date;

import org.springframework.format.annotation.DateTimeFormat;

import com.t.bricks.annotation.DataInfo;

/**
 * 请假管理'Vacation'表实体类
 * 警告:非数据库字段禁止在此添加,应该创建扩展实体中添加
 */
@ApiModel("请假管理Vacation")
public class VacationBase implements Serializable {

	private static final long serialVersionUID = -1L;// 使用rmi时需修改

	/**
	 * 请假编号
	 */
	//[start]
	@DataInfo( sDbName="BricksCommonBusiness", sTableName="Vacation", sName="sId", sComment="请假编号", isDbField=true, sDbFileType="varchar",
		sDefaultData="", isExtra=false, iskey=true, isNull=false,
		iMaxLength=8, isDecimal=false, iIntegralLength=8, iDecimalLength=0, iIndex=0 )
	@ApiModelProperty(value="请假编号", example="")
	//[end]
	protected String sId;

	/**
	 * 请假人编号
	 */
	//[start]
	@DataInfo( sDbName="BricksCommonBusiness", sTableName="Vacation", sName="sUserId", sComment="请假人编号", isDbField=true, sDbFileType="nvarchar",
		sDefaultData="", isExtra=false, iskey=false, isNull=true,
		iMaxLength=8, isDecimal=false, iIntegralLength=16, iDecimalLength=0, iIndex=1 )
	@ApiModelProperty(value="请假人编号", example="")
	//[end]
	protected String sUserId;

	/**
	 * 请假人(冗余)
	 */
	//[start]
	@DataInfo( sDbName="BricksCommonBusiness", sTableName="Vacation", sName="sUserName", sComment="请假人(冗余)", isDbField=true, sDbFileType="nvarchar",
		sDefaultData="", isExtra=false, iskey=false, isNull=true,
		iMaxLength=32, isDecimal=false, iIntegralLength=64, iDecimalLength=0, iIndex=2 )
	@ApiModelProperty(value="请假人(冗余)", example="")
	//[end]
	protected String sUserName;

	/**
	 * 请假类型
	 */
	//[start]
	@DataInfo( sDbName="BricksCommonBusiness", sTableName="Vacation", sName="iType", sComment="请假类型", isDbField=true, sDbFileType="int",
		sDefaultData="1", isExtra=false, iskey=false, isNull=false,
		iMaxLength=8, isDecimal=false, iIntegralLength=4, iDecimalLength=0, iIndex=3 )
	@ApiModelProperty(value="请假类型", example="1")
	//[end]
	protected Integer iType;

	/**
	 * 请假事由
	 */
	//[start]
	@DataInfo( sDbName="BricksCommonBusiness", sTableName="Vacation", sName="sReason", sComment="请假事由", isDbField=true, sDbFileType="nvarchar",
		sDefaultData="", isExtra=false, iskey=false, isNull=true,
		iMaxLength=200, isDecimal=false, iIntegralLength=400, iDecimalLength=0, iIndex=4 )
	@ApiModelProperty(value="请假事由", example="")
	//[end]
	protected String sReason;

	/**
	 * 申请时间
	 */
	@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")//解决表单提交时字符串时间值错误
	//[start]
	@DataInfo( sDbName="BricksCommonBusiness", sTableName="Vacation", sName="dApplyDate", sComment="申请时间", isDbField=true, sDbFileType="datetime",
		sDefaultData="", isExtra=false, iskey=false, isNull=false,
		iMaxLength=23, isDecimal=true, iIntegralLength=-1, iDecimalLength=-1, iIndex=5 )
	@ApiModelProperty(value="申请时间", example="")
	//[end]
	protected Date dApplyDate;

	/**
	 * 请假开始时间
	 */
	@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")//解决表单提交时字符串时间值错误
	//[start]
	@DataInfo( sDbName="BricksCommonBusiness", sTableName="Vacation", sName="dStartDate", sComment="请假开始时间", isDbField=true, sDbFileType="datetime",
		sDefaultData="", isExtra=false, iskey=false, isNull=false,
		iMaxLength=23, isDecimal=true, iIntegralLength=-1, iDecimalLength=-1, iIndex=6 )
	@ApiModelProperty(value="请假开始时间", example="")
	//[end]
	protected Date dStartDate;

	/**
	 * 请假结束时间
	 */
	@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")//解决表单提交时字符串时间值错误
	//[start]
	@DataInfo( sDbName="BricksCommonBusiness", sTableName="Vacation", sName="dEndDate", sComment="请假结束时间", isDbField=true, sDbFileType="datetime",
		sDefaultData="", isExtra=false, iskey=false, isNull=false,
		iMaxLength=23, isDecimal=true, iIntegralLength=-1, iDecimalLength=-1, iIndex=7 )
	@ApiModelProperty(value="请假结束时间", example="")
	//[end]
	protected Date dEndDate;

	/**
	 * 接收人编号(逗号分隔)
	 */
	//[start]
	@DataInfo( sDbName="BricksCommonBusiness", sTableName="Vacation", sName="sReceiveId", sComment="接收人编号(逗号分隔)", isDbField=true, sDbFileType="varchar",
		sDefaultData="", isExtra=false, iskey=false, isNull=true,
		iMaxLength=200, isDecimal=false, iIntegralLength=200, iDecimalLength=0, iIndex=8 )
	@ApiModelProperty(value="接收人编号(逗号分隔)", example="")
	//[end]
	protected String sReceiveId;

	/**
	 * 接收人(冗余,逗号分隔)
	 */
	//[start]
	@DataInfo( sDbName="BricksCommonBusiness", sTableName="Vacation", sName="sReceiveName", sComment="接收人(冗余,逗号分隔)", isDbField=true, sDbFileType="varchar",
		sDefaultData="", isExtra=false, iskey=false, isNull=true,
		iMaxLength=400, isDecimal=false, iIntegralLength=400, iDecimalLength=0, iIndex=9 )
	@ApiModelProperty(value="接收人(冗余,逗号分隔)", example="")
	//[end]
	protected String sReceiveName;

	/**
	 * 审核人编号
	 */
	//[start]
	@DataInfo( sDbName="BricksCommonBusiness", sTableName="Vacation", sName="sExamineId", sComment="审核人编号", isDbField=true, sDbFileType="varchar",
		sDefaultData="", isExtra=false, iskey=false, isNull=false,
		iMaxLength=8, isDecimal=false, iIntegralLength=8, iDecimalLength=0, iIndex=10 )
	@ApiModelProperty(value="审核人编号", example="")
	//[end]
	protected String sExamineId;

	/**
	 * 审核人(冗余)
	 */
	//[start]
	@DataInfo( sDbName="BricksCommonBusiness", sTableName="Vacation", sName="sExamineName", sComment="审核人(冗余)", isDbField=true, sDbFileType="nvarchar",
		sDefaultData="", isExtra=false, iskey=false, isNull=false,
		iMaxLength=32, isDecimal=false, iIntegralLength=64, iDecimalLength=0, iIndex=11 )
	@ApiModelProperty(value="审核人(冗余)", example="")
	//[end]
	protected String sExamineName;

	/**
	 * 审核意见
	 */
	//[start]
	@DataInfo( sDbName="BricksCommonBusiness", sTableName="Vacation", sName="sOpinion", sComment="审核意见", isDbField=true, sDbFileType="nvarchar",
		sDefaultData="", isExtra=false, iskey=false, isNull=true,
		iMaxLength=200, isDecimal=false, iIntegralLength=400, iDecimalLength=0, iIndex=12 )
	@ApiModelProperty(value="审核意见", example="")
	//[end]
	protected String sOpinion;

	/**
	 * 审核时间
	 */
	@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")//解决表单提交时字符串时间值错误
	//[start]
	@DataInfo( sDbName="BricksCommonBusiness", sTableName="Vacation", sName="dExamineDate", sComment="审核时间", isDbField=true, sDbFileType="datetime",
		sDefaultData="", isExtra=false, iskey=false, isNull=true,
		iMaxLength=23, isDecimal=true, iIntegralLength=-1, iDecimalLength=-1, iIndex=13 )
	@ApiModelProperty(value="审核时间", example="")
	//[end]
	protected Date dExamineDate;

	/**
	 * 创建人员
	 */
	//[start]
	@DataInfo( sDbName="BricksCommonBusiness", sTableName="Vacation", sName="sCreator", sComment="创建人员", isDbField=true, sDbFileType="varchar",
		sDefaultData="00000000", isExtra=false, iskey=false, isNull=false,
		iMaxLength=8, isDecimal=false, iIntegralLength=8, iDecimalLength=0, iIndex=14 )
	@ApiModelProperty(value="创建人员", example="00000000")
	//[end]
	protected String sCreator;

	/**
	 * 创建时间
	 */
	@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")//解决表单提交时字符串时间值错误
	//[start]
	@DataInfo( sDbName="BricksCommonBusiness", sTableName="Vacation", sName="dCreateDate", sComment="创建时间", isDbField=true, sDbFileType="datetime",
		sDefaultData="getdate", isExtra=false, iskey=false, isNull=false,
		iMaxLength=23, isDecimal=true, iIntegralLength=-1, iDecimalLength=-1, iIndex=15 )
	@ApiModelProperty(value="创建时间", example="getdate")
	//[end]
	protected Date dCreateDate;

	/**
	 * 修改人员
	 */
	//[start]
	@DataInfo( sDbName="BricksCommonBusiness", sTableName="Vacation", sName="sModifieder", sComment="修改人员", isDbField=true, sDbFileType="varchar",
		sDefaultData="00000000", isExtra=false, iskey=false, isNull=false,
		iMaxLength=8, isDecimal=false, iIntegralLength=8, iDecimalLength=0, iIndex=16 )
	@ApiModelProperty(value="修改人员", example="00000000")
	//[end]
	protected String sModifieder;

	/**
	 * 修改时间
	 */
	@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")//解决表单提交时字符串时间值错误
	//[start]
	@DataInfo( sDbName="BricksCommonBusiness", sTableName="Vacation", sName="dModifiedDate", sComment="修改时间", isDbField=true, sDbFileType="datetime",
		sDefaultData="getdate", isExtra=false, iskey=false, isNull=false,
		iMaxLength=23, isDecimal=true, iIntegralLength=-1, iDecimalLength=-1, iIndex=17 )
	@ApiModelProperty(value="修改时间", example="getdate")
	//[end]
	protected Date dModifiedDate;

	/**
	 * 状态(枚举,1:草稿;2:已提交;3:已申请;4:已接收;5:审核未通过;6:审核通过;7:作废)
	 */
	//[start]
	@DataInfo( sDbName="BricksCommonBusiness", sTableName="Vacation", sName="iState", sComment="状态(枚举,1:草稿;2:已提交;3:已申请;4:已接收;5:审核未通过;6:审核通过;7:作废)", isDbField=true, sDbFileType="int",
		sDefaultData="1", isExtra=false, iskey=false, isNull=false,
		iMaxLength=8, isDecimal=false, iIntegralLength=4, iDecimalLength=0, iIndex=18 )
	@ApiModelProperty(value="状态(枚举,1:草稿;2:已提交;3:已申请;4:已接收;5:审核未通过;6:审核通过;7:作废)", example="1")
	//[end]
	protected Integer iState;

	/**
	 * 序号
	 */
	//[start]
	@DataInfo( sDbName="BricksCommonBusiness", sTableName="Vacation", sName="iIndex", sComment="序号", isDbField=true, sDbFileType="int",
		sDefaultData="1", isExtra=false, iskey=false, isNull=false,
		iMaxLength=8, isDecimal=false, iIntegralLength=4, iDecimalLength=0, iIndex=19 )
	@ApiModelProperty(value="序号", example="1")
	//[end]
	protected Integer iIndex;

	/**
	 * 版本号
	 */
	//[start]
	@DataInfo( sDbName="BricksCommonBusiness", sTableName="Vacation", sName="iVersion", sComment="版本号", isDbField=true, sDbFileType="int",
		sDefaultData="1", isExtra=false, iskey=false, isNull=false,
		iMaxLength=8, isDecimal=false, iIntegralLength=4, iDecimalLength=0, iIndex=20 )
	@ApiModelProperty(value="版本号", example="1")
	//[end]
	protected Integer iVersion;

	/**
	 * 取 请假编号
	 * @return String
	 */
	public String getsId() {
		return sId;
	}

	/**
	 * 设置请假编号
	 * @param sId
	 */
	public void setsId(String sId) {
		this.sId = sId;
	}

	/**
	 * 取 请假人编号
	 * @return String
	 */
	public String getsUserId() {
		return sUserId;
	}

	/**
	 * 设置请假人编号
	 * @param sUserId
	 */
	public void setsUserId(String sUserId) {
		this.sUserId = sUserId;
	}

	/**
	 * 取 请假人(冗余)
	 * @return String
	 */
	public String getsUserName() {
		return sUserName;
	}

	/**
	 * 设置请假人(冗余)
	 * @param sUserName
	 */
	public void setsUserName(String sUserName) {
		this.sUserName = sUserName;
	}

	/**
	 * 取 请假类型
	 * @return Integer
	 */
	public Integer getiType() {
		return iType;
	}

	/**
	 * 设置请假类型
	 * @param iType
	 */
	public void setiType(Integer iType) {
		this.iType = iType;
	}

	/**
	 * 取 请假事由
	 * @return String
	 */
	public String getsReason() {
		return sReason;
	}

	/**
	 * 设置请假事由
	 * @param sReason
	 */
	public void setsReason(String sReason) {
		this.sReason = sReason;
	}

	/**
	 * 取 申请时间
	 * @return Date
	 */
	public Date getdApplyDate() {
		return dApplyDate;
	}

	/**
	 * 设置申请时间
	 * @param dApplyDate
	 */
	public void setdApplyDate(Date dApplyDate) {
		this.dApplyDate = dApplyDate;
	}

	/**
	 * 取 请假开始时间
	 * @return Date
	 */
	public Date getdStartDate() {
		return dStartDate;
	}

	/**
	 * 设置请假开始时间
	 * @param dStartDate
	 */
	public void setdStartDate(Date dStartDate) {
		this.dStartDate = dStartDate;
	}

	/**
	 * 取 请假结束时间
	 * @return Date
	 */
	public Date getdEndDate() {
		return dEndDate;
	}

	/**
	 * 设置请假结束时间
	 * @param dEndDate
	 */
	public void setdEndDate(Date dEndDate) {
		this.dEndDate = dEndDate;
	}

	/**
	 * 取 接收人编号(逗号分隔)
	 * @return String
	 */
	public String getsReceiveId() {
		return sReceiveId;
	}

	/**
	 * 设置接收人编号(逗号分隔)
	 * @param sReceiveId
	 */
	public void setsReceiveId(String sReceiveId) {
		this.sReceiveId = sReceiveId;
	}

	/**
	 * 取 接收人(冗余,逗号分隔)
	 * @return String
	 */
	public String getsReceiveName() {
		return sReceiveName;
	}

	/**
	 * 设置接收人(冗余,逗号分隔)
	 * @param sReceiveName
	 */
	public void setsReceiveName(String sReceiveName) {
		this.sReceiveName = sReceiveName;
	}

	/**
	 * 取 审核人编号
	 * @return String
	 */
	public String getsExamineId() {
		return sExamineId;
	}

	/**
	 * 设置审核人编号
	 * @param sExamineId
	 */
	public void setsExamineId(String sExamineId) {
		this.sExamineId = sExamineId;
	}

	/**
	 * 取 审核人(冗余)
	 * @return String
	 */
	public String getsExamineName() {
		return sExamineName;
	}

	/**
	 * 设置审核人(冗余)
	 * @param sExamineName
	 */
	public void setsExamineName(String sExamineName) {
		this.sExamineName = sExamineName;
	}

	/**
	 * 取 审核意见
	 * @return String
	 */
	public String getsOpinion() {
		return sOpinion;
	}

	/**
	 * 设置审核意见
	 * @param sOpinion
	 */
	public void setsOpinion(String sOpinion) {
		this.sOpinion = sOpinion;
	}

	/**
	 * 取 审核时间
	 * @return Date
	 */
	public Date getdExamineDate() {
		return dExamineDate;
	}

	/**
	 * 设置审核时间
	 * @param dExamineDate
	 */
	public void setdExamineDate(Date dExamineDate) {
		this.dExamineDate = dExamineDate;
	}

	/**
	 * 取 创建人员
	 * @return String
	 */
	public String getsCreator() {
		return sCreator;
	}

	/**
	 * 设置创建人员
	 * @param sCreator
	 */
	public void setsCreator(String sCreator) {
		this.sCreator = sCreator;
	}

	/**
	 * 取 创建时间
	 * @return Date
	 */
	public Date getdCreateDate() {
		return dCreateDate;
	}

	/**
	 * 设置创建时间
	 * @param dCreateDate
	 */
	public void setdCreateDate(Date dCreateDate) {
		this.dCreateDate = dCreateDate;
	}

	/**
	 * 取 修改人员
	 * @return String
	 */
	public String getsModifieder() {
		return sModifieder;
	}

	/**
	 * 设置修改人员
	 * @param sModifieder
	 */
	public void setsModifieder(String sModifieder) {
		this.sModifieder = sModifieder;
	}

	/**
	 * 取 修改时间
	 * @return Date
	 */
	public Date getdModifiedDate() {
		return dModifiedDate;
	}

	/**
	 * 设置修改时间
	 * @param dModifiedDate
	 */
	public void setdModifiedDate(Date dModifiedDate) {
		this.dModifiedDate = dModifiedDate;
	}

	/**
	 * 取 状态(枚举,1:草稿;2:已提交;3:已申请;4:已接收;5:审核未通过;6:审核通过;7:作废)
	 * @return Integer
	 */
	public Integer getiState() {
		return iState;
	}

	/**
	 * 设置状态(枚举,1:草稿;2:已提交;3:已申请;4:已接收;5:审核未通过;6:审核通过;7:作废)
	 * @param iState
	 */
	public void setiState(Integer iState) {
		this.iState = iState;
	}

	/**
	 * 取 序号
	 * @return Integer
	 */
	public Integer getiIndex() {
		return iIndex;
	}

	/**
	 * 设置序号
	 * @param iIndex
	 */
	public void setiIndex(Integer iIndex) {
		this.iIndex = iIndex;
	}

	/**
	 * 取 版本号
	 * @return Integer
	 */
	public Integer getiVersion() {
		return iVersion;
	}

	/**
	 * 设置版本号
	 * @param iVersion
	 */
	public void setiVersion(Integer iVersion) {
		this.iVersion = iVersion;
	}

}
